gtk4.git
7 years agotestsuite/gtk/filterlistmodel.c: Avoid GCCism
Chun-wei Fan [Tue, 9 Oct 2018 08:24:15 +0000 (16:24 +0800)]
testsuite/gtk/filterlistmodel.c: Avoid GCCism

Pointer arithmetic on gpointers (void *) is a GCCism, so avoid that by
being more explicit with things.

7 years agotestsuite/gtk/[flatten|sort]listmodel.c: Avoid VLA usage
Chun-wei Fan [Tue, 9 Oct 2018 08:22:28 +0000 (16:22 +0800)]
testsuite/gtk/[flatten|sort]listmodel.c: Avoid VLA usage

Visual Studio is unlikely to support VLAs at any point, so avoid using
them and use g_newa() instead.

7 years agoMerge branch 'master' into 'master'
Daniel Boles [Sun, 7 Oct 2018 17:28:31 +0000 (17:28 +0000)]
Merge branch 'master' into 'master'

gtkstack: fix null pointer dereference

See merge request GNOME/gtk!361

7 years agoUpdated Lithuanian translation
Aurimas Černius [Sun, 7 Oct 2018 13:57:01 +0000 (16:57 +0300)]
Updated Lithuanian translation

7 years agoMerge branch 'win32-runtime-immodule-swap-gtk4' into 'master'
LRN [Sun, 7 Oct 2018 09:05:16 +0000 (09:05 +0000)]
Merge branch 'win32-runtime-immodule-swap-gtk4' into 'master'

GDK W32: Support switching IM contexts at runtime (GTK4)

See merge request GNOME/gtk!372

7 years agodocs: Update GtkSliceListModel
Benjamin Otte [Sun, 7 Oct 2018 02:23:40 +0000 (02:23 +0000)]
docs: Update GtkSliceListModel

7 years agoslicelistmodel: Fix typos in docs
Mohammed Sadiq [Sun, 7 Oct 2018 02:16:58 +0000 (07:46 +0530)]
slicelistmodel: Fix typos in docs

7 years agoGDK W32: Support switching IM contexts at runtime
Руслан Ижбулатов [Tue, 2 Oct 2018 09:34:22 +0000 (09:34 +0000)]
GDK W32: Support switching IM contexts at runtime

This leverages the normal input context switching mechanism in GTK
by making it think that the gtk-im-module setting changed.
The backend returns gtk-im-module value as "ime" if W32
IME API says that an IME is in use. Otherwise it returns
and empty string - this still triggers an input context
switching code, which, not being able to create the desired context
(which is and empty string), falls back to looking at current
keyboard layout (currently that code is still a FIXME).

Paired with the code that signals gtk-im-module change on keyboard layout
switches, this is sufficient to make GTK capable of switching to
the appropriate IM context at runtime. At least, the kinds of context
that specify languages for which they are used automatically by default
(once locale matching is implemented), and the IME context.

Loading other kinds of IM context might still work via specifying
the gtk-im-module setting in gtk ini file, but doing so will likely
make GTK incapable of using the IME context that is used
for Korean, Chinese and Japanese (and some other languages).

Until someone figures out a way to actually change gtk-im-module
setting on Windows at runtime with meaningful values, the behaviour
introduced by this commit seems like a sufficient workaround.

7 years agoinspector: Highlight CSS node on selection
Benjamin Otte [Fri, 5 Oct 2018 20:07:07 +0000 (22:07 +0200)]
inspector: Highlight CSS node on selection

Fixes #1383

7 years agodocs: Put subsection into right section
Benjamin Otte [Thu, 20 Sep 2018 14:06:06 +0000 (16:06 +0200)]
docs: Put subsection into right section

The widget observer APIs belong into the widget docs, not the window
docs. Oops.

7 years agovideo: Add header include guard
Benjamin Otte [Fri, 21 Sep 2018 02:34:16 +0000 (04:34 +0200)]
video: Add header include guard

7 years agoAdwaita: fix devel styling for sidebar apps
Jakub Steiner [Thu, 4 Oct 2018 18:36:44 +0000 (20:36 +0200)]
Adwaita: fix devel styling for sidebar apps

- don't put the gradient/cogged wheel on apps that have a split headerbar
  due to having a sidebar

7 years agoUpdate Esperanto translation
Kristjan SCHMIDT [Sun, 30 Sep 2018 10:24:25 +0000 (10:24 +0000)]
Update Esperanto translation

7 years agogtkstack: fix null pointer dereference
Hugo Lefeuvre [Wed, 26 Sep 2018 20:59:59 +0000 (16:59 -0400)]
gtkstack: fix null pointer dereference

The gtk_stack_snapshot_slide() function dereferences the
last_visible_child pointer without proper != NULL ckeck. This might
result in NULL pointer dereference and crash if last_visible_child is
invalid.

Add a != NULL check before dereferencing the pointer.

7 years agoMerge branch 'wip/sadiq/fixes' into 'master'
Matthias Clasen [Wed, 26 Sep 2018 18:28:23 +0000 (18:28 +0000)]
Merge branch 'wip/sadiq/fixes' into 'master'

docs: Fix inclusion of source files in tutorial

See merge request GNOME/gtk!341

7 years agoMerge branch 'wip/jimmac/nightly-headerbar' into 'master'
Matthias Clasen [Wed, 26 Sep 2018 16:11:43 +0000 (16:11 +0000)]
Merge branch 'wip/jimmac/nightly-headerbar' into 'master'

Adwaita: tone down the 'devel' styling

See merge request GNOME/gtk!357

7 years agoAdwaita: tone down the 'devel' styling
Jakub Steiner [Wed, 26 Sep 2018 13:50:58 +0000 (15:50 +0200)]
Adwaita: tone down the 'devel' styling

The selected bg was too prominent and intefered with button styling.

7 years agoMerge branch 'wip/arnaudb/fix-dashed-border-4' into 'master'
Timm Bäder [Tue, 25 Sep 2018 07:12:58 +0000 (07:12 +0000)]
Merge branch 'wip/arnaudb/fix-dashed-border-4' into 'master'

Make dashed border-style work correctly

See merge request GNOME/gtk!355

7 years agoUpdate expected node files
Timm Bäder [Mon, 24 Sep 2018 19:05:07 +0000 (21:05 +0200)]
Update expected node files

We don't technically hide the arrow nodes anymore.

7 years agoMake dashed border-style work correctly
Arnaud B [Fri, 21 Sep 2018 12:25:23 +0000 (12:25 +0000)]
Make dashed border-style work correctly

There’s a short-path done for focus rectangles, but it can be taken in other conditions, and then fail occasionally to render a dashed line if the border-width is too big.

7 years agoUpdate Polish translation
Piotr Drąg [Sun, 23 Sep 2018 16:27:30 +0000 (18:27 +0200)]
Update Polish translation

7 years agoscalebutton: Remove unused define
Timm Bäder [Sun, 23 Sep 2018 16:01:59 +0000 (18:01 +0200)]
scalebutton: Remove unused define

7 years agobutton: Remove key_controller member
Timm Bäder [Sun, 23 Sep 2018 15:59:37 +0000 (17:59 +0200)]
button: Remove key_controller member

Unneeded now.

7 years agoassistant: Remove some unused defines
Timm Bäder [Sun, 23 Sep 2018 15:33:48 +0000 (17:33 +0200)]
assistant: Remove some unused defines

7 years agomenu: Remove useless if statement
Timm Bäder [Tue, 18 Sep 2018 14:29:10 +0000 (16:29 +0200)]
menu: Remove useless if statement

7 years agomenu: Show scroll arrows if necessary
Timm Bäder [Mon, 17 Sep 2018 09:19:57 +0000 (11:19 +0200)]
menu: Show scroll arrows if necessary

7 years agomenu: Remove arrow visibility flags
Timm Bäder [Mon, 17 Sep 2018 09:07:41 +0000 (11:07 +0200)]
menu: Remove arrow visibility flags

7 years agoGtkApplication: Fix CRITICAL on shutdown when register_session=FALSE
Jan Alexander Steffens (heftig) [Wed, 5 Sep 2018 19:46:28 +0000 (21:46 +0200)]
GtkApplication: Fix CRITICAL on shutdown when register_session=FALSE

Close https://gitlab.gnome.org/GNOME/gtk/issues/1323#note_327705

7 years agoMerge branch 'master' into 'master'
Daniel Boles [Sat, 22 Sep 2018 16:52:49 +0000 (16:52 +0000)]
Merge branch 'master' into 'master'

flattenlistmodel: Fix uninitialized variable warning

See merge request GNOME/gtk!347

7 years agoUse Unicode apostrophes in new strings
Piotr Drąg [Thu, 20 Sep 2018 17:01:14 +0000 (19:01 +0200)]
Use Unicode apostrophes in new strings

See https://developer.gnome.org/hig/stable/typography.html

https://bugzilla.gnome.org/show_bug.cgi?id=772371

7 years agoflattenlistmodel: Fix uninitialized variable warning
Yi-Soo An [Thu, 20 Sep 2018 03:45:33 +0000 (12:45 +0900)]
flattenlistmodel: Fix uninitialized variable warning

Variable, added, would be a garbage value if model is NULL and
the following code, if condition, use the uninitialized variable.
A side effect could be occurred by that.

To avoid, the variable is initialized to zero.

7 years agoMerge branch 'master' into 'master'
Matthias Clasen [Wed, 19 Sep 2018 13:46:50 +0000 (13:46 +0000)]
Merge branch 'master' into 'master'

Remove some duplication in testfilechooserbutton

See merge request GNOME/gtk!342

7 years agoMerge branch 'installed-tests' into 'master'
Matthias Clasen [Wed, 19 Sep 2018 11:59:16 +0000 (11:59 +0000)]
Merge branch 'installed-tests' into 'master'

Get GTK+ 4 installed-tests closer to working

See merge request GNOME/gtk!348

7 years agoUpdate Turkish translation
Emin Tufan Çetin [Wed, 19 Sep 2018 11:13:18 +0000 (11:13 +0000)]
Update Turkish translation

7 years agoUpdate Turkish translation
Emin Tufan Çetin [Wed, 19 Sep 2018 11:05:05 +0000 (11:05 +0000)]
Update Turkish translation

7 years agoUpdate Turkish translation
Emin Tufan Çetin [Wed, 19 Sep 2018 10:56:13 +0000 (10:56 +0000)]
Update Turkish translation

7 years agotestsuite: Install accessibility-dump executable alongside tests
Simon McVittie [Fri, 14 Sep 2018 12:15:09 +0000 (13:15 +0100)]
testsuite: Install accessibility-dump executable alongside tests

The installed-tests want to run this.

Signed-off-by: Simon McVittie <smcv@debian.org>
7 years agotestsuite: Fix installed-test metadata for autotestkeywords
Simon McVittie [Wed, 19 Sep 2018 07:09:18 +0000 (08:09 +0100)]
testsuite: Fix installed-test metadata for autotestkeywords

The executable is called autotestkeywords, so we shouldn't try to run
an executable named keywords. Also rename the metadata file to match.

Signed-off-by: Simon McVittie <smcv@debian.org>
7 years agoreftests: Fix path to installed-tests in .test metadata
Simon McVittie [Fri, 14 Sep 2018 08:22:15 +0000 (09:22 +0100)]
reftests: Fix path to installed-tests in .test metadata

The installed-tests are now namespaced as gtk-4.0 to avoid colliding
with GTK+ 3, but these files weren't updated.

Signed-off-by: Simon McVittie <smcv@debian.org>
7 years agoinspector: Handle case where there's no default application
Benjamin Otte [Wed, 19 Sep 2018 02:28:09 +0000 (04:28 +0200)]
inspector: Handle case where there's no default application

7 years agocssrbtree: Fix a crasher
Benjamin Otte [Wed, 19 Sep 2018 02:26:37 +0000 (04:26 +0200)]
cssrbtree: Fix a crasher

After removing elements, there were a few cases where the tree wasn't
properly balanced which could further down violate assumptions about the
layout.

Attached is the original testcase that triggered it. I didn't bother
simplifying it.

7 years agoMerge branch 'win32-scroll-both-gtk4' into 'master'
LRN [Tue, 18 Sep 2018 16:43:37 +0000 (16:43 +0000)]
Merge branch 'win32-scroll-both-gtk4' into 'master'

GDK W32: send both smooth and discrete scrolling events (GTK4)

See merge request GNOME/gtk!337

7 years agoMerge branch 'revealer-support-min-size-master' into 'master'
Benjamin Otte [Tue, 18 Sep 2018 15:19:12 +0000 (15:19 +0000)]
Merge branch 'revealer-support-min-size-master' into 'master'

gtkrevealer: support minimum size of child

Closes #635

See merge request GNOME/gtk!317

7 years agoGDK W32: fix direction of horizontal smooth scrolling events
Eduard Braun [Thu, 13 Sep 2018 14:17:51 +0000 (16:17 +0200)]
GDK W32: fix direction of horizontal smooth scrolling events

Commit 359df028be7b1dae76a1abb9bad8a3b86a648765 changed the
code to send GDK_SCROLL_SMOOTH with deltas instead of
GDK_SCROLL_(UP|DOWN|LEFT|RIGHT).

Windows defines deltas inversed for vertical direction
(positive values mean the wheel was turned forward)
but not for horizontal direction
(positive values mean the wheel was turned towards the right).

This commit fixes behavior as both axes were inverted previously.

7 years agoGDK W32: send both smooth and discrete scrolling events
Руслан Ижбулатов [Wed, 12 Sep 2018 06:55:49 +0000 (06:55 +0000)]
GDK W32: send both smooth and discrete scrolling events

Commit d64467b33475bf8358f66bec9450101f37c05e9c changed the
code to send GDK_SCROLL_SMOOTH with deltas instead of
GDK_SCROLL_(UP|DOWN|LEFT|RIGHT). Change it again, to send
both the GDK_SCROLL_SMOOTH and the GDK_SCROLL_(UP|DOWN|LEFT|RIGHT)
event separately (with the discrete event marked as emulated),
as this is what other backends (such as wayland) do.

7 years agorevealer: Support minimum size of child
Carlos Soriano [Tue, 18 Sep 2018 08:55:02 +0000 (10:55 +0200)]
revealer: Support minimum size of child

Up until now when allocating the child it only used the natural size
while the measuring also used the minimum size, resulting in a clipped
child when animating if the child had different minimum size and
natural size. This was an obvious case when using labels that had
ellipsization.

This commit gives full allocation to the child by inverting the size
the revealer reduces from its animation progress.

Code done by Benjamin Otte.

Closes: https://gitlab.gnome.org/GNOME/gtk/issues/635
7 years agoci/docker: add lcov so we can create coverage reports
Christoph Reiter [Tue, 18 Sep 2018 07:55:50 +0000 (09:55 +0200)]
ci/docker: add lcov so we can create coverage reports

This was requested on IRC; the docker image in the registry is updated already.

7 years agotreelistmodel: Improve naming a bit
Benjamin Otte [Tue, 18 Sep 2018 05:50:33 +0000 (07:50 +0200)]
treelistmodel: Improve naming a bit

The complexity with model items vs row items is really confusing. Add to
that treelistmodel position vs child model position vs parent position,
and you're so confused, even the best naming can't help.

And once you're there, consider passthrough vs non-passthrough...

7 years agolistmodels: Clarify documentation for function prototypes
Benjamin Otte [Tue, 18 Sep 2018 05:27:48 +0000 (07:27 +0200)]
listmodels: Clarify documentation for function prototypes

Fixes #1341

7 years agoRevert "listlistmodel: Fix documentation comment"
Mohammed Sadiq [Tue, 18 Sep 2018 04:31:12 +0000 (10:01 +0530)]
Revert "listlistmodel: Fix documentation comment"

This reverts commit 03679d434262be5a73e25668513a6a6597fd90ea.

listlistmodel is private

7 years agolistlistmodel: Fix documentation comment
Mohammed Sadiq [Tue, 18 Sep 2018 04:25:43 +0000 (09:55 +0530)]
listlistmodel: Fix documentation comment

7 years agotree-list-model: Return the correct item type
Georges Basile Stavracas Neto [Tue, 18 Sep 2018 03:51:57 +0000 (00:51 -0300)]
tree-list-model: Return the correct item type

When passthrough is enabled, it should return the GType
of the child GListModels; when disabled, it should be
GTK_TYPE_TREE_LIST_ROW.

The conditions are inverted however, causing a few
warnings to trigger.

Fix that by returning the correct GType.

7 years agoMerge branch 'wip/sadiq/model-fixes' into 'master'
Mohammed Sadiq [Tue, 18 Sep 2018 02:54:30 +0000 (02:54 +0000)]
Merge branch 'wip/sadiq/model-fixes' into 'master'

treelistmodel: Fix memory leak

See merge request GNOME/gtk!344

7 years agotreelistmodel: Fix memory leak
Mohammed Sadiq [Tue, 18 Sep 2018 01:58:56 +0000 (07:28 +0530)]
treelistmodel: Fix memory leak

gtk_tree_list_model_init_node() increases the reference count
of the model passed. Let's not do that, and let it take the
model passed.

7 years agoMerge branch 'wip/sadiq/model-fixes' into 'master'
Mohammed Sadiq [Tue, 18 Sep 2018 02:03:58 +0000 (02:03 +0000)]
Merge branch 'wip/sadiq/model-fixes' into 'master'

treelistmodel: Fix signal emission on row destroy

See merge request GNOME/gtk!343

7 years agotreelistmodel: Fix signal emission on row destroy
Mohammed Sadiq [Tue, 18 Sep 2018 01:41:27 +0000 (07:11 +0530)]
treelistmodel: Fix signal emission on row destroy

7 years agoRemove some duplication in testfilechooserbutton
Manu Cornet [Mon, 17 Sep 2018 12:27:46 +0000 (12:27 +0000)]
Remove some duplication in testfilechooserbutton

Most of the code creating the two types of dialogs (open file,
choose folder) is the same. This refactors the common code into a
helper method. This also makes it easier to add other chooser types
for this test (e.g. save file).

7 years agogtk: Fix some g-i annotations warnings
Rico Tzschichholz [Mon, 17 Sep 2018 11:00:36 +0000 (13:00 +0200)]
gtk: Fix some g-i annotations warnings

7 years agoMerge branch 'toolbar-expand' into 'master'
Robert Ancell [Mon, 17 Sep 2018 08:59:19 +0000 (08:59 +0000)]
Merge branch 'toolbar-expand' into 'master'

toolbar: Use hexpand/vexpand Gtk+ properties

See merge request GNOME/gtk!334

7 years agotoolbar: Use hexpand/vexpand Gtk+ properties
Robert Ancell [Mon, 10 Sep 2018 23:00:01 +0000 (11:00 +1200)]
toolbar: Use hexpand/vexpand Gtk+ properties

7 years agodocs: Fix inclusion of source files in tutorial
Mohammed Sadiq [Mon, 17 Sep 2018 08:07:43 +0000 (13:37 +0530)]
docs: Fix inclusion of source files in tutorial

7 years agotree list model: Add docs
Matthias Clasen [Mon, 17 Sep 2018 03:06:19 +0000 (23:06 -0400)]
tree list model: Add docs

7 years agoMinor doc fix
Matthias Clasen [Mon, 17 Sep 2018 02:35:26 +0000 (22:35 -0400)]
Minor doc fix

Clarify some wording.

7 years agotestsuite: Disable some tests for older glib
Benjamin Otte [Mon, 17 Sep 2018 02:29:40 +0000 (04:29 +0200)]
testsuite: Disable some tests for older glib

7 years agotestsuite: Add tests for GtkSortListModel
Benjamin Otte [Mon, 17 Sep 2018 01:56:41 +0000 (03:56 +0200)]
testsuite: Add tests for GtkSortListModel

7 years agosortlistmodel: Actually insert unsorted items at the wrong place
Benjamin Otte [Mon, 17 Sep 2018 01:50:56 +0000 (03:50 +0200)]
sortlistmodel: Actually insert unsorted items at the wrong place

We were adding items in reverse order, oops.

7 years agoUpdate POTFILES.in
Piotr Drąg [Sun, 16 Sep 2018 19:02:31 +0000 (21:02 +0200)]
Update POTFILES.in

7 years agodocs: Add missing TreeListModel docs
Benjamin Otte [Sun, 16 Sep 2018 17:38:25 +0000 (19:38 +0200)]
docs: Add missing TreeListModel docs

7 years agoMerge branch 'wip/sadiq/fixes' into 'master'
Matthias Clasen [Sun, 16 Sep 2018 17:06:29 +0000 (17:06 +0000)]
Merge branch 'wip/sadiq/fixes' into 'master'

gdkselectioninputstream-x11: Fix memory leak

See merge request GNOME/gtk!340

7 years agotesttreelistmodel: Display the file icon, because why not
Benjamin Otte [Sun, 16 Sep 2018 08:31:16 +0000 (10:31 +0200)]
testtreelistmodel: Display the file icon, because why not

7 years agoinspector: Update the controllers list to show parent controllers
Benjamin Otte [Tue, 11 Sep 2018 02:41:52 +0000 (04:41 +0200)]
inspector: Update the controllers list to show parent controllers

Now we show all the controllers that are relevant when widget gets sent
events.

7 years agotesttreelistmodel: Make the statusbar display more info
Benjamin Otte [Sat, 15 Sep 2018 13:12:35 +0000 (15:12 +0200)]
testtreelistmodel: Make the statusbar display more info

Now display how many items were filtered (if any) and how many
directories remain to be sanned (if any).

7 years agotesttreelistmodel: Sort files by name
Benjamin Otte [Fri, 14 Sep 2018 02:54:36 +0000 (04:54 +0200)]
testtreelistmodel: Sort files by name

7 years agoGtkSortListModel: Add
Benjamin Otte [Fri, 14 Sep 2018 02:34:40 +0000 (04:34 +0200)]
GtkSortListModel: Add

7 years agotesttreelistmodel: Add search
Benjamin Otte [Thu, 13 Sep 2018 00:33:32 +0000 (02:33 +0200)]
testtreelistmodel: Add search

Add a simple search that does a case insensitive substring search of the
file paths.

7 years agotesttreelistmodel: Make the directory loading async
Benjamin Otte [Wed, 12 Sep 2018 03:04:17 +0000 (05:04 +0200)]
testtreelistmodel: Make the directory loading async

This is way more complicated than it should be, because it requires
manually limiting the number of open file enumerators.

On the other hand, it exhaustively tests the items-changed emission of
all involved listmodels because those signals come in pretty much
randomly.

It's also 50% slower than the sync version, with the caeat that the sync
version only shows the UI after it's done loading, while this version
shows it right away.

7 years agotesttreelistmodel: Add a hack to handle LONG lists
Benjamin Otte [Wed, 12 Sep 2018 01:10:50 +0000 (03:10 +0200)]
testtreelistmodel: Add a hack to handle LONG lists

... and make the lists long by autoexpanding the tree.

7 years agoGtkSliceListModel: add
Benjamin Otte [Wed, 12 Sep 2018 01:07:24 +0000 (03:07 +0200)]
GtkSliceListModel: add

7 years agoinspector: Make controllers page use gtk_list_box_bind_model()
Benjamin Otte [Tue, 11 Sep 2018 02:19:06 +0000 (04:19 +0200)]
inspector: Make controllers page use gtk_list_box_bind_model()

7 years agoinspector: Rename "Gestures" page to "Controllers"
Benjamin Otte [Tue, 11 Sep 2018 00:25:37 +0000 (02:25 +0200)]
inspector: Rename "Gestures" page to "Controllers"

And rename GtkInspectorGestures => GtkInspectorControllers, too.

7 years agoinspector: Make gestures page handle all controllers
Benjamin Otte [Mon, 10 Sep 2018 23:56:42 +0000 (01:56 +0200)]
inspector: Make gestures page handle all controllers

This requires removing support for gesture groups.

7 years agoGtkMapListModel: add
Benjamin Otte [Mon, 10 Sep 2018 23:28:19 +0000 (01:28 +0200)]
GtkMapListModel: add

7 years agopropertylookuplistmodel: Add
Benjamin Otte [Mon, 10 Sep 2018 15:01:57 +0000 (17:01 +0200)]
propertylookuplistmodel: Add

This model just takes an object and a property name and recursively
looks it up. In particular, I want it for:

widget, widget.parent, widget.parent.parent, ...

7 years agoinspector: Turn object tree into a GtkListBox
Benjamin Otte [Wed, 29 Aug 2018 14:19:37 +0000 (16:19 +0200)]
inspector: Turn object tree into a GtkListBox

The code gets rid of the GtkTreeView and replaces it with a GtkListBox.

Most of the logic is now done via GListModel subclasses.

A big change is that this new list is now tracking updates itself and
doesn't need to be manually updated. All code that used to cause rescans
or add forgotten objects to the tree has been removed.

If objects are missing from the object tree, the logic for tracking them
needs to be added.

7 years agotestsuite: Disable some tests with older glib
Benjamin Otte [Wed, 5 Sep 2018 15:26:35 +0000 (17:26 +0200)]
testsuite: Disable some tests with older glib

Fixes CI.

7 years agoinspector: Use a GtkPicture to display render nodes
Benjamin Otte [Wed, 5 Sep 2018 14:40:51 +0000 (16:40 +0200)]
inspector: Use a GtkPicture to display render nodes

Instead of the outdated render node view, use modern GTK APIs.

7 years agoinspector: Add an icon to the render node list
Benjamin Otte [Wed, 5 Sep 2018 04:34:03 +0000 (06:34 +0200)]
inspector: Add an icon to the render node list

7 years agoinspector: Make the render node tree use a ListBox
Benjamin Otte [Wed, 5 Sep 2018 03:53:33 +0000 (05:53 +0200)]
inspector: Make the render node tree use a ListBox

It used to be a treeview.

7 years agowidget: Add gtk_widget_observe_controllers()
Benjamin Otte [Wed, 5 Sep 2018 01:00:18 +0000 (03:00 +0200)]
widget: Add gtk_widget_observe_controllers()

This mirrors gtk_widget_observe_children() - just that it observes the
controllers, not the children.

7 years agogtk: Add GtkFlattenListModel
Benjamin Otte [Sun, 2 Sep 2018 22:48:28 +0000 (00:48 +0200)]
gtk: Add GtkFlattenListModel

We can flatten lists of lists into lists now!

7 years agotreelistmodel: Add more API to navigate the tree
Benjamin Otte [Sat, 1 Sep 2018 16:48:38 +0000 (18:48 +0200)]
treelistmodel: Add more API to navigate the tree

This adds functionality from GtkTreeIter into GtkTreeListRow that allows
finding items in the model and getting their position for use in
GtkListBox.

7 years agotreelistmodel: Refactor to add GtkTreeListRow
Benjamin Otte [Sat, 1 Sep 2018 02:59:06 +0000 (04:59 +0200)]
treelistmodel: Refactor to add GtkTreeListRow

This patch does multiple things:

1. Add a custom persistent per-row object.
2. Move all per-row API to that object. This means notifications are now
   possible.
3. Add a "passthrough" construct-only property to the TreeListModel that
   influences if the model returns these new object or passes through
   the ones from the model.

This greatly simplifies the code needed to be written for widgetry,
because one can just connect the per-row object to the expanders that
expand and collapse rows.

As an added power feature, these objects can also be passed through
further models (like filter models).

It also adds kind of a hack to Adwaita to make the test look neat.

7 years agogtk: Add GtkFilterListModel
Benjamin Otte [Fri, 31 Aug 2018 03:34:18 +0000 (05:34 +0200)]
gtk: Add GtkFilterListModel

This is a GListModel implementation that filters the given source model.

7 years agowidget: Add gtk_widget_observe_children()
Benjamin Otte [Mon, 27 Aug 2018 17:50:01 +0000 (19:50 +0200)]
widget: Add gtk_widget_observe_children()

This creates a listmodel that tracks a widget's children. Doing so turns
adding/removing children from O(1) to O(N) though, so use with caution.

7 years agowindow: Add gtk_window_get_toplevels()
Benjamin Otte [Mon, 27 Aug 2018 06:37:16 +0000 (08:37 +0200)]
window: Add gtk_window_get_toplevels()

This one returns a list of all toplevel windows.

7 years agogtk: Add GtkTreeListModel
Benjamin Otte [Tue, 12 Jun 2018 01:56:21 +0000 (03:56 +0200)]
gtk: Add GtkTreeListModel

This is a GListModel implementation with a neat API that can be used to
implement trees inside GtkListBox.

7 years agogdkselectioninputstream-x11: Fix memory leak
Mohammed Sadiq [Sun, 16 Sep 2018 14:38:25 +0000 (20:08 +0530)]
gdkselectioninputstream-x11: Fix memory leak

7 years agogtk_application_inihit: allow no reason
Matthias Clasen [Fri, 14 Sep 2018 03:28:16 +0000 (23:28 -0400)]
gtk_application_inihit: allow no reason

We document this argument as nullable, so treat it as such.

Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1327
7 years agoUpdate Turkish translation
Emin Tufan Çetin [Tue, 11 Sep 2018 20:17:29 +0000 (20:17 +0000)]
Update Turkish translation

7 years agoMerge branch 'adwaita-fixes' into 'master'
Jakub Steiner [Mon, 10 Sep 2018 14:29:54 +0000 (14:29 +0000)]
Merge branch 'adwaita-fixes' into 'master'

Adwaita fixes

See merge request GNOME/gtk!333